home *** CD-ROM | disk | FTP | other *** search
- connect "e:\sst\articles\9708\code\demo.gdb"
- user "SYSDBA" password "masterkey";
-
- set term !!;
-
- drop procedure CreditNew!!
- create procedure CreditNew(iCreditNo integer, iCustNo integer)
- returns (oCreditNo integer)
- as begin
- if (iCreditNo is null) then
- iCreditNo = gen_id(Gen_CreditNo, 1);
- oCreditNo = :iCreditNo;
-
- insert into Credits (CreditNo, CustNo)
- values (:iCreditNo, :iCustNo);
- end!!
-
- drop procedure PaymentSave!!
- create procedure PaymentSave(iCustNo integer, iAmount integer)
- returns (oPaymentNo integer)
- as begin
- oPaymentNo = gen_id(Gen_PaymentNo, 1);
- insert into Payments (PaymentNo, CustNo, Amount)
- values (:oPaymentNo, :iCustNo, :iAmount);
- end!!
-
- drop procedure PaymentCreditSave!!
- create procedure PaymentCreditSave(iPaymentNo integer, iCreditNo integer,
- iAmount integer)
- as
- declare variable NewBalance float;
- begin
- select BalanceDue from Credits
- where CreditNo = :iCreditNo
- into :NewBalance;
-
- NewBalance = NewBalance - :iAmount;
-
- update Credits
- set BalanceDue = :NewBalance
- where CreditNo = :iCreditNo;
-
- insert into PaymentCredits (PaymentNo, CreditNo, Amount, BalanceDue)
- values (:iPaymentNo, :iCreditNo, :iAmount, :NewBalance);
- end!!
-
- set term ;!!
-
-
-
-
-
-